package com.uls.lh.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.uls.common.annotation.Excel;
import com.uls.common.core.domain.BaseEntity;

/**
 * 车辆信息管理对象 lh_carinfo
 * 
 * @author lh
 * @date 2024-11-06
 */
public class LhCarinfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 车辆编号 */
    private Long carId;

    /** 车辆照片URL，存储在MinIO中的路径 */
    @Excel(name = "车辆照片URL，存储在MinIO中的路径")
    private String photoUrl;

    /** 车牌号 */
    @Excel(name = "车牌号")
    private String licensePlate;

    /** 车辆品牌 */
    @Excel(name = "车辆品牌")
    private String brand;

    /** 车辆型号 */
    @Excel(name = "车辆型号")
    private String model;

    /** 购买日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "购买日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date purchaseDate;

    /** 车辆状态(1可用，0维修中，2报废) */
    @Excel(name = "车辆状态(1可用，0维修中，2报废)")
    private Long status;

    public void setCarId(Long carId) 
    {
        this.carId = carId;
    }

    public Long getCarId() 
    {
        return carId;
    }
    public void setPhotoUrl(String photoUrl) 
    {
        this.photoUrl = photoUrl;
    }

    public String getPhotoUrl() 
    {
        return photoUrl;
    }
    public void setLicensePlate(String licensePlate) 
    {
        this.licensePlate = licensePlate;
    }

    public String getLicensePlate() 
    {
        return licensePlate;
    }
    public void setBrand(String brand) 
    {
        this.brand = brand;
    }

    public String getBrand() 
    {
        return brand;
    }
    public void setModel(String model) 
    {
        this.model = model;
    }

    public String getModel() 
    {
        return model;
    }
    public void setPurchaseDate(Date purchaseDate) 
    {
        this.purchaseDate = purchaseDate;
    }

    public Date getPurchaseDate() 
    {
        return purchaseDate;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("carId", getCarId())
            .append("photoUrl", getPhotoUrl())
            .append("licensePlate", getLicensePlate())
            .append("brand", getBrand())
            .append("model", getModel())
            .append("purchaseDate", getPurchaseDate())
            .append("status", getStatus())
            .toString();
    }
}
